package com.ccb.sc.common.modules.goods.vo;

import com.ccb.sc.common.modules.goods.enums.GoodsStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author ken
 * @version 1.0
 * @date 2020-09-20
 */
@Data
@ApiModel
@Accessors(chain = true)
public class GoodsDetailVo implements Serializable {

    private Long id;

    @ApiModelProperty("商品名称")
    private String name;

    @ApiModelProperty("产品简称")
    private String shortName;

    @ApiModelProperty("推荐语")
    private String recommendedWords;

    @ApiModelProperty("产品编码")
    private String spu;

    @ApiModelProperty("分类id")
    private Long categoryId;

    @ApiModelProperty("分类名称")
    private String categoryName;

    @ApiModelProperty("品牌id")
    private Long brandId;

    @ApiModelProperty("品牌名称")
    private String brandName;

    @ApiModelProperty("商品主图")
    private String picture;

    @ApiModelProperty("收藏数")
    private Integer collects;

    @ApiModelProperty(value = "属性", example = "{\"颜色\":[\"白色\",\"金色\"],\"内存\":[\"64G\",\"128G\"]}")
    private String attribute;

    @ApiModelProperty("市场价格")
    private BigDecimal marketPrice;

    @ApiModelProperty("销售价格")
    private BigDecimal salePrice;

    @ApiModelProperty("兑换积分")
    private Integer exchangePoints;

    @ApiModelProperty("运费")
    private BigDecimal freight;

    @ApiModelProperty("商品状态")
    private GoodsStatus status;
    
    @ApiModelProperty("商品轮播图")
    private List<String> carousels;

    @ApiModelProperty("商品规格")
    private List<GoodsSpecsVo> specs;

    @ApiModelProperty("详情")
    private String detail;

}
